package com.examsage.examsage.model;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author examsage
 * @since 2025-07-02
 */
@Data
@TableName("major_plan")
public class MajorPlan implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 唯一标识
     */
    @TableField(value = "major_code", updateStrategy = FieldStrategy.IGNORED)
    private String majorCode;

    /**
     * 如 计算机科学与技术
     */
    @TableField(value = "major_name", updateStrategy = FieldStrategy.IGNORED)
    private String majorName;

    /**
     * 如 本科、专科
     */
    @TableField(value = "degree_type", updateStrategy = FieldStrategy.IGNORED)
    private String degreeType;

    /**
     * 专业总学分要求
     */
    @TableField(value = "total_credits", updateStrategy = FieldStrategy.IGNORED)
    private Integer totalCredits;

    /**
     * 1: 启用，0: 停用
     */
    @TableField(value = "status", updateStrategy = FieldStrategy.IGNORED)
    private Boolean status;

    /**
     * 专业备注信息
     */
    @TableField(value = "remark", updateStrategy = FieldStrategy.IGNORED)
    private String remark;

    /**
     * 自动生成
     */
    @TableField(value = "gmt_create")
    private LocalDateTime gmtCreate;

    /**
     * 自动更新
     */
    @TableField(value = "gmt_modified")
    private LocalDateTime gmtModified;
}
